package com.hopu.mybatis02.pojo;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * Book 类表示书籍实体，包含书籍的基本信息。
 * 使用 Lombok 的 @Data 注解自动生成 getter、setter、equals、hashCode 和 toString 方法。
 */
@Data
public class Book implements Serializable {

  /**
   * 书籍的唯一标识 ID
   */
  //id
  private long id;

  /**
   * 书籍的名称
   */
  //书籍名称
  private String name;

  /**
   * 书籍封面的存储路径或 URL
   */
  //封面
  private String cover;

  /**
   * 书籍的作者
   */
  private String author;

  /**
   * 书籍的描述信息
   */
  private String description;

  /**
   * 书籍所属分类的 ID
   */
  private long categoryId;

  /**
   * 书籍的出版时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  private LocalDateTime publishTime;

  /**
   * 书籍的类型，使用数字标识
   */
  private long type;

  /**
   * 书籍的状态，使用数字标识
   */
  private long status;

  /**
   * 书籍的字数
   */
  private long wordCount;

  /**
   * 书籍的评分
   */
  private double score;

  /**
   * 书籍记录的创建时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  private LocalDateTime createTime;

  /**
   * 书籍记录的更新时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  private LocalDateTime updateTime;

}

